home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
-
-
-
- ATI adapters README
-
- Marc Aurele La France
-
- 23 March 1996
-
-
-
- Abstract
-
- This is the README for the XFree86 ATI VGA driver used in the
- XF86_Mono, XF86_VGA16 and XF86_SVGA servers. Users of ATI adapters
- based on the Mach8, Mach32 or Mach64 (including 3D Rage and 3D Rage
- II) accelerators should be using the accelerated servers (XF86_Mach8,
- XF86_Mach32 or XF86_Mach64). The unaccelerated servers (XF86_Mono,
- XF86_VGA16 and XF86_SVGA) should still work, but are a waste of capa-
- bilities.
-
-
-
- 1. What is the ATI VGA driver?
-
- The ATI VGA driver is a 256-colour, 16-colour and monochrome driver for
- XFree86. The driver is intended for all ATI video adapters except those that
- do not provide SuperVGA functionality (such as some early Mach8 and Mach32
- adapters). The following approximate maximum resolutions (based on the Golden
- Ratio of x/y = (1 + sqrt(5))/2) are possible depending on the video memory
- available on the adapter (and the capabilities of your monitor):
-
- 256k 640x409x256 896x585x16
- 512k 896x585x256 1280x819x16
- 1M 1280x819x256 1824x1149x16
-
-
- Maximum monochrome resolutions are the same as those for 16-colour mode,
- because the monochrome server uses a maximum of one fourth of the available
- video memory.
-
-
- 2. What is the ATI VGA driver *not*?
-
- This driver does not yet support more than 8 bits of pixel depth. Even if your
- manual says that your graphics adapter supports modes using more than 256
- colours, the ATI VGA driver will not use these modes.
-
- The ATI VGA driver is not an accelerated driver. If your adapter is based on
- the Mach8, Mach32 or Mach64 video controllers, this driver will not use the
- accelerated functions of the hardware. It will only use the VGA hardware
- (which, for Mach32's and Mach64's, is integrated into the accelerator). This
- can make opaque moves, for example, quite jerky.
-
-
-
-
- ATI adapters README
-
-
-
-
-
- ATI adapters README
-
-
-
- 3. What video adapters will the driver work with?
-
- Most adapters harbouring the following ATI video controller chips will work
- with this driver:
-
- VGA Wonder series: 18800, 18800-1, 28800-2, 28800-4, 28800-5, 28800-6
- Mach32 series: 68800-3, 68800-6, 68800AX, 68800LX
- Mach64 series: 88800GX-C, 88800GX-D, 88800GX-E, 88800GX-F, 88800CX,
- 264CT, 264ET, 264VT, 264VT2, 264GT
-
-
- The 264xT series are integrated controllers, meaning that they include an
- internal RAMDAC and clock generator. Some early Mach32 adapters will not work
- with this driver because they do not provide VGA functionality. Also, early
- Mach8 adapters will not work for the same reason, unless the adapter also has a
- video controller from the VGA Wonder series (or is connected to one through the
- VGA passthrough connector).
-
- These adapters are available with a variety of clock generators and RAMDACs.
- See the XF86Config section below for details. These adapters are available
- with or without a mouse.
-
- VGA Wonder V3 adapters use a 18800 video controller and generate dot clocks
- with crystals. VGA Wonder V4 adapters have a 18800-1 and also use crystals.
- VGA Wonder V5 adapters also use a 18800-1, but have a 18810 clock generator.
- VGA Wonder+ adapters use a 28800-2 and a 18810. Other than these, ATI's
- adapter naming convention (if it can be said that one exists) starts to fall
- apart.
-
- The VGA Wonder series was also available through ATI's OEM channel under the
- name VGA1024. Thus, the ATI VGA driver also supports VGA1024, VGA1024D,
- VGA1024XL, VGA1024DXL and VGA1024VLB adapters, among others.
-
-
- 4. What should I put in my XF86Config file?
-
- The chipset will be automatically detected. The chipset name for this driver
- is "ati". The driver also recognizes "vgawonder", "mach8", "mach32" and
- "mach64" as chipset names. In this version of the driver, all names are equiv-
- alent. In some future version each name will have a different meaning to be
- documented at that time.
-
- The clocks line to be specified in your XF86Config depends on what the adapter
- uses to generate dot clocks.
-
- For all adapters, one of the following clocks specifications (or an initial
- subset thereof) can be used depending on what the adapter uses to generate dot
- clocks:
-
- Crystals (VGA Wonder V3 and V4 adapters only):
-
- Clocks 50.000 56.644 0.000 44.900 44.900 50.000 0.000 36.000
- 25.000 28.322 0.000 22.450 22.450 25.000 0.000 18.000
- 16.667 18.881 0.000 14.967 14.967 16.667 0.000 12.000
-
-
-
-
-
-
-
-
- ATI adapters README
-
-
-
- 12.500 14.161 0.000 11.225 11.225 12.500 0.000 9.000
-
-
-
- ATI 18810 clock generator:
-
- Clocks 30.240 32.000 37.500 39.000 42.954 48.771 0.000 36.000
- 40.000 56.644 75.000 65.000 50.350 56.640 0.000 44.900
- 15.120 16.000 18.750 19.500 21.477 24.386 0.000 18.000
- 20.000 28.322 37.500 32.500 25.175 28.320 0.000 22.450
- 10.080 10.667 12.500 13.000 14.318 16.257 0.000 12.000
- 13.333 18.881 25.000 21.667 16.783 18.880 0.000 14.967
- 7.560 8.000 9.375 9.750 10.739 12.193 0.000 9.000
- 10.000 14.161 18.750 16.250 12.586 14.160 0.000 11.225
-
-
-
- ATI 18811-0 and ATI 18812-0 clock generators:
-
- Clocks 30.240 32.000 110.000 80.000 42.954 48.771 92.400 36.000
- 39.910 44.900 75.000 65.000 50.350 56.640 0.000 44.900
- 15.120 16.000 55.000 40.000 21.477 24.386 46.200 18.000
- 19.955 22.450 37.500 32.500 25.175 28.320 0.000 22.450
- 10.080 10.667 36.667 26.667 14.318 16.257 30.800 12.000
- 13.303 14.967 25.000 21.667 16.783 18.880 0.000 14.967
- 7.560 8.000 27.500 20.000 10.739 12.193 23.100 9.000
- 9.978 11.225 18.750 16.250 12.588 14.160 0.000 11.225
-
-
-
- ATI 18811-1 and ATI 18811-2 clock generators:
-
- Clocks 135.000 32.000 110.000 80.000 100.000 126.000 92.400 36.000
- 39.910 44.900 75.000 65.000 50.350 56.640 0.000 44.900
- 67.500 16.000 55.000 40.000 50.000 63.000 46.200 18.000
- 19.955 22.450 37.500 32.500 25.175 28.320 0.000 22.450
- 45.000 10.667 36.667 26.667 33.333 42.000 30.800 12.000
- 13.303 14.967 25.000 21.667 16.783 18.880 0.000 14.967
- 33.750 8.000 27.500 20.000 25.000 31.500 23.100 9.000
- 9.978 11.225 18.750 16.250 12.588 14.160 0.000 11.225
-
-
- Mach32 and Mach64 owners should only specify up to the first 32 frequencies.
-
- The oldest Mach64 adapters use one of the clock generators described above.
- The possibilities for Mach64 adapters also include programmable clock genera-
- tors. At bootup, video BIOS initialization programmes an initial set of fre-
- quencies. Two of these are reserved to allow the setting of modes that do not
- use a frequency from this initial set. One of these reserved slots is used by
- the BIOS mode set routine, the other by the particular driver used (MS-Windows,
- AutoCAD, X, etc.). The clock numbers reserved in this way are dependent on the
- particular clock generator used on the adapter.
-
- If the driver does not support the adapter's clock generator, it will try to
-
-
-
-
-
-
-
-
- ATI adapters README
-
-
-
- match the clocks to one of the following specifications. This matching will
- occur whether or not the user specifies the clocks in XF86Config.
-
- BIOS setting 1:
-
- Clocks 0.000 110.000 126.000 135.000 50.350 56.640 63.000 72.000
- 0.000 80.000 75.000 65.000 40.000 44.900 49.500 50.000
- 0.000 55.000 63.000 67.500 25.180 28.320 31.500 36.000
- 0.000 40.000 37.500 32.500 20.000 22.450 24.750 25.000
-
-
-
- BIOS setting 2:
-
- Clocks 0.000 110.000 126.000 135.000 25.180 28.320 31.500 36.000
- 0.000 80.000 75.000 65.000 40.000 44.900 49.500 50.000
- 0.000 55.000 63.000 67.500 12.590 14.160 15.750 18.000
- 0.000 40.000 37.500 32.500 20.000 22.450 24.750 25.000
-
-
-
- BIOS setting 3:
-
- Clocks 0.000 0.000 0.000 0.000 25.180 28.320 0.000 0.000
- 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
- 0.000 0.000 0.000 0.000 12.590 14.160 0.000 0.000
- 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
-
-
- If the driver matches the clocks to the third setting above, functionality will
- be *extremely* limited (assuming the driver works at all).
-
- Other clock generators that have been used on ATI adapters (which can all be
- said to be clones of one of the above) might generate non-zero frequencies for
- those that are zero above, or vice-versa.
-
- The order of the clocks *is* very important, although the driver will reorder
- the clocks if it deems it appropriate to do so. Mach32 and Mach64 owners
- should note that this order is different than what they would use for the
- accelerated servers.
-
- If the driver detects a supported programmable clock generator, it will ignore
- any XF86Config clock specification and programme the generator as needed by the
- modes to be used during the X session.
-
- A clock probe, done with the command "X -probeonly", will help you decide which
- of the above to use for your particular adapter. If the server consistently
- reports that it has detected an unknown clock generator, please e-mail me the
- stderr output.
-
- Modes can be derived from the information in XFree86's doc directory. If you
- do not specify a "modes" line in the display subsection of the appropriate
- screen section of your XF86Config, the driver will generate a default mode and
- attempt to use it. The timings for the default mode are derived from the
-
-
-
-
-
-
-
-
- ATI adapters README
-
-
-
- timings of the mode (usually a text mode) in effect when the server is started.
-
-
- 5. What is the history of the driver?
-
- The complete history of the driver is rather cloudy. The following is probably
- incomplete and inaccurate.
-
- Apparently, Per Lindqvist (pgd@compuram.bbt.se) first got an ATI driver working
- with an early ATI card under X386 1.1a. This original driver may have actually
- been based on an non-functional ATI driver written by Roell. Then Doug Evans
- (dje@cygnus.com) ported the driver to the ATI VGA Wonder XL, trying in the pro-
- cess to make the driver work with all other ATI cards.
-
- Rik Faith (faith@cs.unc.edu) obtained the X11R4 driver from Doug Evans in the
- summer of 1992, and ported the code to the X386 part of X11R5. This subse-
- quently became part of XFree86.
-
- I (Marc Aurele La France) took the driver over in the fall of 1993 after Rik
- got rid of his VGA Wonder card.
-
-
- 6. Miscellaneous notes
-
- In all cases, virtual resolutions must be less than 4096 pixels wide. For VGA-
- Wonder V3 adapters with 256kB of video memory, and for all 264xT adapters, the
- 256-colour server will further limit virtual resolutions to less than 2048 pix-
- els wide. These are hardware limits that cannot be circumvented.
-
- Dot clocks greater than 80MHz cannot be used on most adapters as a way still
- needs to be discovered to make the VGA Wonder controller do pixel multiplexing.
-
- Support for more than 8bpp colour depth is pending proper RAMDAC handling and
- banked framebuffer code for >8bpp.
-
- Video memory corruption can still occur during mode switches on V3, V4 and V5
- adapters. Symptoms of this problem include garbled fonts on return to text
- mode, and various effects (snow, dashed lines, etc) on initial entry into a
- graphics mode. In the first case, the workaround is to use some other means of
- restoring the text font. On Linux, this can be done with the kbd or svgalib
- packages. In the second case, xrefresh will usually cleanup the image.
-
- Video memory banking does not work in the 16-colour and monochrome servers on
- V3, V4 and V5 adapters (with 512kB of video memory). This appears to be a
- hardware limitation. The driver's default behaviour has been changed to take
- this into consideration by limiting video memory to 256kB.
-
- Interlaced modes do not work in the monochrome server on 28800-x adapters when
- using a virtual resolution that is 2048 pixels or wider. This appears to be a
- hardware limitation. The driver has been changed to prune modes accordingly.
-
- Support for virtual resolutions using more than 1MB of video memory is still
- incomplete. Specifically, such support works on Mach32 adapters, and on 264xT
- adapters, but not on any other Mach64 adapters. On 88800GX and 88800CX
-
-
-
-
-
-
-
-
- ATI adapters README
-
-
-
- adapters, this appears to be a hardware limitation. Consequently, the driver's
- default behaviour is to limit video memory to 1MB.
-
- There is some controversy over whether or not clocks higher than 135MHz should
- be allowed on 264xT adapters. For now, clocks will be limited to 135MHz by
- default. This limit can only be increased (up to a driver-calculated absolute
- maximum) through the DACSpeed option in XF86Config. Be aware however that
- doing this is untested and might damage the adapter.
-
- The default mode does not work on the more recent Mach64 adapters. This will
- be fixed in a future release by reading the programmable clock generator's reg-
- isters.
-
- Future development plans include addressing the above problems and using accel-
- erated functionality.
-
- Please e-mail any bug reports, comments, etc. to Marc Aurele La France,
- tsi@ualberta.ca
-
- Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/ati.sgml,v 3.15.2.1 1997/06/01 12:33:36 dawes Exp $
-
-
-
-
-
- $XConsortium: ati.sgml /main/9 1996/10/19 18:03:54 kaleb $
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ATI adapters README
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- CONTENTS
-
-
-
- 1. What is the ATI VGA driver? .............................................. 1
-
- 2. What is the ATI VGA driver *not*? ........................................ 1
-
- 3. What video adapters will the driver work with? ........................... 2
-
- 4. What should I put in my XF86Config file? ................................. 2
-
- 5. What is the history of the driver? ....................................... 5
-
- 6. Miscellaneous notes ...................................................... 5
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- i
-
-
-